# # -*- coding: UTF-8 -*-
# """
# @author:zhangxing
# @file:mongo_2_excel.py
# @time:2020/12/29
#
# 将mongoDB中的数据转存到excel中
#
# """
# import xlwt
# from pymongo import MongoClient
#
#
# class ConnectMongo:
#     def __init__(self):
#         self.client = MongoClient("mongodb://192.168.2.181:27017")
#         self.mydb = self.client['construction']
#         self.mycol = self.mydb['demand_3']
#         self.book = xlwt.Workbook()
#         self.sheet = self.book.add_sheet('sheetname', cell_overwrite_ok=True)
#         self.word = {
#             "district": 1,
#             "province": 2,
#             "city": 3,
#             "xiaofang": 4,
#             "muqiang": 5,
#             "ganggou": 6,
#             "yijian": 7,
#             "erjian": 8,
#             "sanjian": 9,
#             "sijian": 10,
#             "wujian": 11,
#             "liujian": 12,
#             "qijian": 13,
#             "bajian": 14,
#             "jiujian": 15,
#             "jianzhugongcheng": 16,
#             "xiaofanggongcheng": 17,
#             "zhuangshigongcheng": 18,
#             "jianshegongcheng": 19,
#             "jidianshebei": 20,
#             "jidiangongcheng": 21,
#             "jianzhuanzhuang": 22,
#             "jixieshebei": 23,
#             "tuzhuang": 24,
#             "gangjiegou": 25,
#             "jianzhucailiao": 26,
#             "tongfengshebei": 27,
#             "shebeizulin": 28,
#             "jixiezulin": 29,
#             "xiaofangshebei": 30,
#             "fangfugongcheng": 31,
#             "jianzhushebei": 32,
#             "qizhongjixie": 33,
#         }
#         self.chinese_word = {
#             "district": "所在大区",
#             "province": "所在省直辖市",
#             "city": "所在城市",
#             "xiaofang": "消防",
#             "muqiang": "幕墙",
#             "ganggou": "钢构",
#             "yijian": "一建",
#             "erjian": "二建",
#             "sanjian": "三建",
#             "sijian": "四建",
#             "wujian": "五建",
#             "liujian": "六建",
#             "qijian": "七建",
#             "bajian": "八建",
#             "jiujian": "九建",
#             "jianzhugongcheng": "建筑工程",
#             "xiaofanggongcheng": "消防工程",
#             "zhuangshigongcheng": "装饰工程",
#             "jianshegongcheng": "建设工程",
#             "jidianshebei": "机电设备",
#             "jidiangongcheng": "机电工程",
#             "jianzhuanzhuang": "建筑安装",
#             "jixieshebei": "机械设备",
#             "tuzhuang": "土装",
#             "gangjiegou": "钢结构",
#             "jianzhucailiao": "建筑材料",
#             "tongfengshebei": "通风设备",
#             "shebeizulin": "设备租赁",
#             "jixiezulin": "机械租赁",
#             "xiaofangshebei": "消防设备",
#             "fangfugongcheng": "防腐工程",
#             "jianzhushebei": "建筑设备",
#             "qizhongjixie": "起重机械",
#         }
#         self.need_word = {"北京",
#                           "天津",
#                           "青岛",
#                           "济南",
#                           "烟台",
#                           "大连",
#                           "唐山",
#                           "沈阳",
#                           "长春",
#                           "石家庄",
#                           "潍坊",
#                           "哈尔滨",
#                           "临沂",
#                           "济宁",
#                           "保定",
#                           "淄博",
#                           "沧州",
#                           "邯郸",
#                           "菏泽",
#                           "廊坊",
#                           "德州",
#                           "威海",
#                           "东营",
#                           "泰安",
#                           "大庆",
#                           "滨州",
#                           "聊城",
#                           "邢台",
#                           "日照",
#                           "鞍山",
#                           "枣庄",
#                           "秦皇岛",
#                           "张家口",
#                           "衡水",
#                           "承德",
#                           "吉林",
#                           "营口",
#                           "盘锦",
#                           "齐齐哈尔",
#                           "绥化",
#                           "锦州",
#                           "上海",
#                           "苏州",
#                           "杭州",
#                           "南京",
#                           "宁波",
#                           "无锡",
#                           "合肥",
#                           "南通",
#                           "常州",
#                           "徐州",
#                           "温州",
#                           "扬州",
#                           "绍兴",
#                           "盐城",
#                           "嘉兴",
#                           "台州",
#                           "泰州",
#                           "金华",
#                           "镇江",
#                           "淮安",
#                           "芜湖",
#                           "连云港",
#                           "湖州",
#                           "宿迁",
#                           "滁州",
#                           "阜阳",
#                           "安庆",
#                           "马鞍山",
#                           "蚌埠",
#                           "宿州",
#                           "亳州",
#                           "六安",
#                           "衢州",
#                           "宣城",
#                           "丽水",
#                           "舟山",
#                           "淮南",
#                           "淮北",
#                           "深圳",
#                           "广州",
#                           "佛山",
#                           "泉州",
#                           "东莞",
#                           "福州",
#                           "厦门",
#                           "漳州",
#                           "南宁",
#                           "惠州",
#                           "珠海",
#                           "茂名",
#                           "江门",
#                           "柳州",
#                           "中山",
#                           "湛江",
#                           "汕头",
#                           "龙岩",
#                           "三明",
#                           "莆田",
#                           "宁德",
#                           "肇庆",
#                           "桂林",
#                           "揭阳",
#                           "南平",
#                           "清远",
#                           "玉林",
#                           "海口",
#                           "钦州",
#                           "韶关",
#                           "北海",
#                           "阳江",
#                           "百色",
#                           "贵港",
#                           "梅州",
#                           "潮州",
#                           "汕尾",
#                           "河源",
#                           "梧州",
#                           "武汉",
#                           "郑州",
#                           "长沙",
#                           "南昌",
#                           "洛阳",
#                           "襄阳",
#                           "宜昌",
#                           "南阳",
#                           "岳阳",
#                           "常德",
#                           "赣州",
#                           "许昌",
#                           "衡阳",
#                           "周口",
#                           "九江",
#                           "株洲",
#                           "新乡",
#                           "商丘",
#                           "焦作",
#                           "信阳",
#                           "驻马店",
#                           "宜春",
#                           "荆州",
#                           "上饶",
#                           "郴州",
#                           "平顶山",
#                           "黄冈",
#                           "孝感",
#                           "湘潭",
#                           "安阳",
#                           "开封",
#                           "邵阳",
#                           "吉安",
#                           "荆门",
#                           "永州",
#                           "十堰",
#                           "益阳",
#                           "黄石",
#                           "娄底",
#                           "怀化",
#                           "咸宁",
#                           "濮阳",
#                           "漯河",
#                           "抚州",
#                           "三门峡",
#                           "随州",
#                           "恩施",
#                           "鄂州",
#                           "鹤壁",
#                           "西安",
#                           "榆林",
#                           "太原",
#                           "鄂尔多斯",
#                           "乌鲁木齐",
#                           "兰州",
#                           "呼和浩特",
#                           "包头",
#                           "宝鸡",
#                           "咸阳",
#                           "银川",
#                           "赤峰",
#                           "延安",
#                           "长治",
#                           "运城",
#                           "汉中",
#                           "吕梁",
#                           "晋中",
#                           "临汾",
#                           "西宁",
#                           "大同",
#                           "晋城",
#                           "昌吉",
#                           "通辽",
#                           "阿克苏",
#                           "呼伦贝尔",
#                           "伊犁",
#                           "安康",
#                           "巴音郭楞",
#                           "朔州",
#                           "喀什",
#                           "忻州",
#                           "重庆",
#                           "成都",
#                           "昆明",
#                           "贵阳",
#                           "遵义",
#                           "绵阳",
#                           "曲靖",
#                           "宜宾",
#                           "德阳",
#                           "南充",
#                           "红河",
#                           "泸州",
#                           "达州",
#                           "玉溪",
#                           "毕节",
#                           "乐山",
#                           "渭南",
#                           "凉山",
#                           "黔南",
#                           "内江",
#                           "自贡",
#                           "眉山",
#                           "大理",
#                           "遂宁",
#                           "黔西南",
#                           "六盘水",
#                           "楚雄",
#                           "广安",
#                           "铜仁",
#                           "昭通",
#                           "黔东南",
#                           "文山",
#                           "攀枝花", }
#
#     def write_records(self):
#         pass
#
#     def write_data(self):
#         record_count = self.mycol.find({}).count()
#         print(record_count)
#         items = self.mycol.find({})  # 获取需要存入excel的数据，
#         for index, i in enumerate(self.chinese_word):  # 编写第一行（标题）
#             self.sheet.write(0, index, self.chinese_word[i])
#         count = 0
#         for item in items:  # 从第二行开始，每个item写一行
#             count += 1
#             print(count)
#             flag = 0
#             for word in self.need_word:
#                 if word in item['city']:
#                     flag = 1
#                     continue
#             if flag:
#                 for it in item:
#                     if it in self.word:
#                         self.sheet.write(count + 1, self.word[it] - 1, item[it])  # 遍历item，从第一列开始，每个元素放一列
#             else:
#                 print(item['city'])
#                 count -= 1
#
#                 # title = ['大区', "省", "字母代号", "市", ]
#                 # for index, i in enumerate(title):
#                 #     self.sheet.write(0, index, i)
#                 # print(len(data))
#                 # for i, name in enumerate(data):
#                 #     # print(len(data[name]))
#                 #     for j, value in enumerate(data[name]):
#                 #         if type(value) == list:
#                 #             title.append(value[0])
#                 #             value = value[-1]
#                 #         self.sheet.write(i + 1, j, value)
#
#
# if __name__ == "__main__":
#     c = ConnectMongo()
#     c.write_data()  #
#     c.book.save('demand.xls')  # 保存
